﻿#pragma once    // 防止重复包含
//---------动态顺序表------------//
#include <stdlib.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <math.h>
#include <assert.h>
#define M 1000

// 加入typedef 可以进行简写
typedef int SLDateType;   // 数据类型
typedef struct Seqlist
{
	SLDateType* a;
	int size;  // 记录存储了多少个有效数据
	int capacity; //空间容量大小
}SL;
void SLInit(SL* ps);  //初始化   

void SLDestory(SL* ps); //销毁   

void SLPushBack(SL* ps, SLDateType x);  // 尾插  

void SLPrint(SL* ps);  //打印函数  

void SLPopBack(SL* ps); //尾删    

void SLPushFront(SL* ps, SLDateType x); //头插 

void SLPopFront(SL* ps);  //头删

void SLCheckCapacity(SL* ps);  //检查是否需要扩容

//中间插入删除
void SLInsert(SL* ps, int pos, SLDateType x);  //在pos位置插入数据

void SLErase(SL* ps, int pos); //删除pos位置的数据

void SLsize(SL* ps);  // 测试 size 的值

int SLFind(SL* ps, SLDateType x);  //查找某一个数字的位置

int SLFinds(SL* ps, SLDateType x, int begin);   // 确定查找数字的起始位置
